![]() | Using Inference from Pattern Matching | Constrain | ![]() |
When you set the Inference property called constraintMode to use Instance Properties (or Knowledge & Instance Properties) you can constrain the selection of an attribute/component when a property of it has already been selected.
Here is an example of an attribute called Car, which has several car makers as the values. The property called Color shows which color that particular make is available in.
If the property Car.Color was captured on a dialog, the user could select either red, blue or white. Note that only these three colors would be shown for the property Car.Color as the color values are defined using a List type property.
If red was selected, only the BMW or the Rover would be available for selection when the Car attribute was shown on a dialog.
Using Knowledge & Instance Properties
Constraints can also be applied by using both the Instance Properties and the Knowledge of this object in conjunction. The knowledge could be a decision tree (used as a Constraint tree) or a table of Cases.
The exclusion of invalid values is done by combining all the exclusions specified by the Instance Properties with all the exclusions specified by the knowledge.
See also the section on Constraint Trees for an overview of constraints using trees.